cmake_minimum_required(VERSION 3.20.0)
project(example LANGUAGES CXX C)
set(CXX_STANDARD 20)
set(CXX_STANDARD_REQUIRED ON)
add_compile_options(-std=c++20 -fno-exceptions -fno-rtti)

function(add_example)
  foreach(example_name IN LISTS ARGN)
    add_executable(${example_name} ${example_name}.cpp)
    target_include_directories(${example_name} PRIVATE ../include/public)
  endforeach()
endfunction()

add_example(callback sml event_queue connect sml_eq)
